<
jargon> 1. A good property or behaviour (as of a program).
Whether it was intended or not is immaterial.
2. An intended property or behaviour (as of a program).
Whether it is good or not is immaterial (but if bad, it is
also a
misfeature).
3. A surprising property or behaviour; in particular, one that
is purposely inconsistent because it works better that way -
such an inconsistency is therefore a
feature and not a
bug. This kind of
feature is sometimes called a
miswart.
4. A property or behaviour that is gratuitous or unnecessary,
though perhaps also impressive or cute. For example, one
feature of
Common LISP's "format" function is the ability to
print numbers in two different Roman-numeral formats (see
bells, whistles, and gongs).
5. A property or behaviour that was put in to help someone
else but that happens to be in your way.
6. A bug that has been documented. To call something a
feature sometimes means the author of the program did not
consider the particular case, and that the program responded
in a way that was unexpected but not strictly incorrect. A
standard joke is that a bug can be turned into a
feature
simply by documenting it (then theoretically no one can
complain about it because it's in the manual), or even by
simply declaring it to be good. "That's not a bug, that's a
feature!" is a common catch-phrase. Apparently there is a
Volkswagen Beetle in San Francisco whose license plate reads
"
FEATURE".
See also
feetch feetch,
creeping featurism,
wart, {green
lightning}.
The relationship among bugs, features, misfeatures, warts and
miswarts might be clarified by the following hypothetical
exchange between two hackers on an airliner:
A: "This seat doesn't recline."
B: "That's not a bug, that's a
feature. There is an emergency
exit door built around the window behind you, and the route
has to be kept clear."
A: "Oh. Then it's a misfeature; they should have increased
the spacing between rows here."
B: "Yes. But if they'd increased spacing in only one section
it would have been a wart - they would've had to make
nonstandard-length ceiling panels to fit over the displaced
seats."
A: "A miswart, actually. If they increased spacing throughout
they'd lose several rows and a chunk out of the profit margin.
So unequal spacing would actually be the Right Thing."
B: "Indeed."
"Undocumented
feature" is a common euphemism for a
bug.
7. An attribute or function of a
class in
Eiffel.
[
Jargon File]
(1995-10-22)